//
// Created by yunlang on 2021/12/7.
//

#ifndef FILEARCHIVER_HFMCODEBITSET_H
#define FILEARCHIVER_HFMCODEBITSET_H
#include<string>
using namespace std;
class hfmCodeBitSet
{
private:
    unsigned int len;
    unsigned char *data;
public:
    static const unsigned int DataBlockLengeh;
    void initFromOther(const hfmCodeBitSet& other);
    hfmCodeBitSet();
    hfmCodeBitSet(const hfmCodeBitSet&);
    ~hfmCodeBitSet();
    unsigned int getLength() const;
    bool append(unsigned char);
    bool pop_back();
    bool operator[](unsigned int) const;
    hfmCodeBitSet& operator=(const hfmCodeBitSet&);
    unsigned char* getData() const;
};
#endif //FILEARCHIVER_HFMCODEBITSET_H
